from openai import OpenAI
from configuration import Config
class GPTClient:
    def __init__(self, config:Config):
        """
        初始化 GPTClient 对象。

        :param client: OpenAI 客户端对象。
        :param config: 包含配置信息的对象，例如模型名称等。
        """
        self.config = config
        self.client = OpenAI(api_key=self.config.api_key, base_url=self.config.base_url)


    def call_gpt(self, prompt: str) -> str:
        """
        使用 OpenAI API 调用 GPT 模型生成文本。

        :param prompt: 输入的提示文本。
        :return: GPT 生成的文本。
        """
        try:
            response = self.client.chat.completions.create(
                model=self.config.model,  # 模型名称（例如 deepseek-chat）
                messages=[
                    {"role": "system", "content": "你是一个 AI 助手。"},
                    {"role": "user", "content": prompt},
                ],
                stream=False
            )
            return response.choices[0].message.content
        except Exception as e:
            print(f"调用 GPT 失败: {e}")
            return "调用GPT失败，请检查是否开启代理或者配置是否正确"